This invention relates generally to markup languages such as eXtensible Markup Language (XML), and more specifically to mapping content so that it can be exposed in markup language format, such as XML format, as well as content in the markup language format.
The HyperText Transport Protocol (HTTP) has emerged as the standard mechanism by which information is transported over TCP/IP (Transmission Control Protocol/Internet Protocol) compatible networks, such as the Internet, intranets, and extranets. HTTP is more specifically an application-level protocol for distributed, collaborative, hypermedia information systems. It is a generic, stateless, protocol that can be used for many tasks beyond its use for hypertext, such as name servers and distributed object management systems, through extension of its request methods, error codes and headers. It is referred to as a transport protocol, since information is transported according to its specifications, and is also referred to as a request-response protocol, since information is exchanged by a client making a request of a server, which generates a response thereto. HTTP as referred to herein refers generally to any standard of HTTP, and specifically to HTTP/1.1, as described in the HTTP Working Group Internet Draft dated Nov. 18, 1998, prepared by Fielding, et al., and available on the web site http://www.w3.org.
A common use of HTTP is the transport of information formatted according to a markup language. For example, a popular application of the Internet is the browsing of world-wide-web pages thereof. In such instances, typically the information retrieved is in HyperText Markup Language (HTML) format, as transported according to HTTP. However, other standard markup languages are emerging. One such markup language is eXtensible Markup Language (XML). XML describes a class of data objects that are referred to as XML documents, and partially describes the behavior of computer programs that process them. A primary difference between HTML and XML is that within the former, information content is intertwined with the layout of the content, making their separation difficult, for example. Conversely, within XML a description of the storage layout and logical structure of content is maintained separate from the content itself. However, both XML and HTML are subsets of a markup language known as Standard Generalized Markup Language (SGML). XML as referred to herein refers generally to any standard of XML, and specifically to XML 1.0, as described in the W3C recommendation REC-xml-19980210 dated Feb. 10, 1998, and also available on the web site http://www.w3.org.
HTTP, and hence XML in the context of HTTP, allows for the access of resources. The term resource refers to any piece of information that has a location described by a Uniform Resource Locator (URL) of the form HTTP:// less than domain greater than / less than sub greater than / less than resource greater than . less than extension greater than , where  less than domain greater than  specifies a particular domain,  less than sub greater than  is a subdirectory,  less than resource greater than  is a resource, and  less than extension greater than can be, for example, .com, .edu, and .net, among others. A resource can be, for example, a Web page, a hierarchical collection of information such as folders, a document, a database, a bitmap image, or a computational object. Recently, extensions to HTTP have been proposed that, among other things, allow for better access to resources over HTTP. The extensions are generally referred to as the World-Wide-Web Distributed Authoring and Versioning (WebDAV) extensions to HTTP. The goal of WebDAV, broadly speaking, has been to add remote authoring capabilities to HTTP, so that HTTP can be more convenient as a readable and writable collaborative medium, and not necessarily only a browsing medium for web pages.
WebDAV is generally described in the reference E. James Whitehead, Jr., World-Wide-Web Distributed Authoring and Versioning (WebDAV): An Introduction, in StandardView, Vol. 5, No. 1, March 1997, pages 3-8. WEBDav is also described in the reference Internet Engineering Task Force (IETF) Request for Comment (RFC) 2518, entitled HTTP Extensions for Distributed Authoring, by Y. Goland, E. Whitehead, A. Faizi, S. Carter and D. Jensen, and dated February 1999. Generally, this latter reference specifies a set of methods, headers and content-types ancillary to HTTP/1.1 for the management of resource properties, creation and management of resource collections, name space manipulation, and resource locking (also referred to as collision avoidance).
Data, also referred to as information or content, may be able to be retrieved from databases or other stores in XML format, in accordance with, for example, the WebDAV extensions to XML. However, many legacy databases and other stores are not retrievable in XML format. For example, servers running Microsoft(copyright) Exchange(copyright) server software store content in a format consistent with the Mail Application Programming Interface (MAPI) developed by Microsoft(copyright). As a result, utilizing such servers in the context of XML and WebDAV is difficult, since these servers cannot return information in XML format. This limits the usefulness of XML, since many legacy databases abound. For this and other reasons, there is a need for the present invention.
The invention relates to markup language content and content mapping. For example, in one embodiment, content is received according to a first predetermined format, such as MAPI. The content is mapped from this format to a second predetermined format which is consistent with a predetermined markup language, such as XML. The second format may also be consistent with a predetermined extension of the markup language, such as the WebDAV extensions to XML. Once mapped, the content is output in the second format.
Embodiments of the invention therefore provide for advantages not found in the prior art. Information stored in legacy formats such as MAPI are nevertheless retrievable in markup language format in accordance with embodiments of the invention. Embodiments of the invention allow for such information to be converted to markup language format, such as XML format. This makes markup language formats like XML more useful, since they can be used in the context of already-existing databases and other information stores.